refactor(windows): reuse packaged verifier for rollback - #3707
Conversation
Refs apache#3575 Generated-by: Codex
053ad7d to
18a5aba
Compare
|
Looks good, CI is running. |
Generated-by: OpenAI Codex
Generated-by: OpenAI Codex
|
Follow-up fix pushed in The first Windows failure was caused by the rollback path passing the current candidate installation to The next Windows run exposed a second integration detail from the verifier reuse: the old rollback-only launcher created the smoke working directory implicitly, while the shared verifier writes Local verification: 简体中文回滚验证现在使用 current 契约,并在调用共享 verifier 前显式创建 smoke 目录,修复了 Git 资源误检和 `ENOENT packaged-sandbox-manifest.json` 两个 CI 失败。Generated-by: OpenAI Codex |
Summary
Replace the rollback verifier's private
assertLaunchableCDP wrapper with the existingverifyPackagedWindowsAppauthority, using the explicitlegacy-baselinecontract for restored pre-upgrade installations.The rollback-specific filesystem, registry, backup, recovery, fail-closed, and
.onInstFailedassertions are unchanged. The duplicate process/renderer/version plumbing is removed, and a focused harness test pins the delegation contract.Fixes #3575
Verification
node --test scripts/verify-windows-harness.test.mjs— 40 passednpm --workspace @maka/eval run build— passed (required release-test fixture)node --test scripts/product-release.test.mjs scripts/verify-windows-harness.test.mjs— 66 passednpm run lint— passednpx biome check scripts/verify-windows-installer-rollback.mjs scripts/verify-windows-harness.test.mjs— passednode --checkfor both changed scripts andgit diff --check— passednpm run typecheckcurrently reports unrelated errors in unmodified Runtime Host, CLI, UI, and Desktop files on the latestmain.中文摘要
本 PR 复用已有的 packaged-app verifier 来验证回滚后的旧版本安装,固定使用
legacy-baseline契约,删除重复的 CDP/进程/版本检查代码;所有备份、注册表、失败恢复和.onInstFailed回滚行为保持不变,并补充了 delegation 回归测试。AI use
Tool: OpenAI Codex assisted with issue analysis, implementation, tests, and verification.